630 REM TEST FOR END OF GAME (HUMAN SCORE = 0 OR ALL SPACES FILLED)
640 IF H1 = 0 OR N1 = 64 THEN 930
650 REM HUMAN'S MOVE
660 T1 = H:T2 = C: VTAB 24: HTAB 1: PRINT "PLEASE ENTER YOUR MOVE (ROW,COL.) ";: CALL 64668: GET I$:I = VAL(I$): PRINT I;: IF I = 0 THEN VTAB 23: HTAB 1: FLASH : PRINT "DO YOU WISH TO FORFEIT? (Y/N)";: NORMAL : CALL 64668: GET I$: IF I$ = "Y" THEN 270
670 IF I = 0 THEN VTAB 23: HTAB 1: CALL 64668: GOTO 660
960 IF H1 >C1 THEN PRINT "YOU WON IT!";: GOTO 1030
970 C1 = C1 -H1: IF C1 <0 THEN C1 = -C1
980 IF C1 <11 THEN PRINT " A SQUEEKER!";: GOTO 1030
990 IF C1 <25 THEN PRINT " HOT GAME!";: GOTO 1030
1000 IF C1 <39 THEN PRINT " FIGHT!";: GOTO 1030
1010 IF C1 <53 THEN PRINT " WALKAWAY!";: GOTO 1030
1020 PRINT " PERFECT GAME!";
1030 NORMAL : CALL 64668: VTAB 24: HTAB 1: PRINT "DO YOU WANT TO PLAY ANOTHER GAME? ";: CALL 64668: GET I$: IF I$ = "Y" THEN CLEAR : GOTO 10
1040 TEXT : HOME : VTAB 12: HTAB 12: PRINT "THANKS FOR PLAYING!": VTAB 1: HTAB 1: END
1050 REM PRINT OUT BOARD
1060 VTAB 24: HTAB 1: CALL 64668
1070 FOR I = 1 TO 8: FOR J = 1 TO 8:II = (I -1) *4 +4:JJ = (J -1) *4 +4:AA = A(I,J)
1080 COLOR= 0: IF AA <0 THEN COLOR= 15
1090 FOR ZZ = II TO II +2: HLIN JJ,JJ +2 AT ZZ: NEXT : COLOR= 0: IF AA >0 THEN COLOR= 15
1100 PLOT JJ +1,II +1
1110 NEXT J: NEXT I: RETURN
1120 REM START OF PROGRAM
1130 DIM A(10,10),I4(8),J4(8),X$(10): TEXT : HOME : VTAB 10: HTAB 7: PRINT "GREETINGS FROM OTHELLO II": PRINT : PRINT : PRINT "DO YOU WANT INSTRUCTIONS (Y OR N)? ";: GET X$: IF X$ = "N" THEN 1220
1140 REM ANY OTHER CHARACTER, ASSUME INSTRUCTIONS ARE NEEDED
1150 HOME : SPEED= 0
1160 PRINT "OTHELLO IS PLAYED ON AN 8 X 8 CHECKER": PRINT "BOARD. THE ROWS ARE NUMBERED 1 TO 8": PRINT "AND THE COLUMNS ARE LETTERED 'A' TO 'H'.": SPEED= 255: PRINT ," A B C D E F G H": FOR I = 1 TO 8: PRINT ,I" . . . . . . . .": NEXT
1170 SPEED= 0: PRINT : PRINT "THE INITIAL CONFIGURATION IS BLANK,": PRINT "EXCEPT FOR THE FOUR CENTER SQUARES,": PRINT "WHICH FORM THE PATTERN...": SPEED= 255: PRINT : PRINT ,"4 . . . O - . . .": PRINT ,"5 . . . - O . . .": SPEED= 0
1180 PRINT : PRINT "YOU ARE THE '-' AT 4,E AND 5,D AND I AM": PRINT "THE '0' AT 4,D AND 5,E."
1190 PRINT : PRINT "TRY TO PLACE YOUR PIECE SO THAT IT": PRINT "OUTFLANKS MINE CREATING A HORIZONTAL,": PRINT "VERTICAL, OR DIAGONAL RUN OF MY PIECES": PRINT "BOUNDED ON EACH END BY AT LEAST ONE OF": PRINT "YOURS.": PRINT
1200 PRINT "THIS WILL FLIP MY PIECES, TURNING THEM": PRINT "INTO YOURS.": PRINT : PRINT "NOTE: YOU MUST CAPTURE AT LEAST ONE OF": PRINT "MY PIECES IN THIS WAY IF IT IS AT ALL": PRINT "POSSIBLE. IF NOT, THEN YOU MUST"
1210 PRINT "FORFEIT YOUR TURN BY ENTERING '0' FOR": PRINT "YOUR ROW MOVE.": FOR I = 1 TO 25: PRINT : NEXT : SPEED= 255
1220 REM INIT PROGRAM
1230 F2 = 0: GR : COLOR= 14: FOR II = 3 TO 35 STEP 4: VLIN 3,35 AT II: HLIN 3,35 AT II: NEXT : HLIN 1,37 AT 0: HLIN 1,37 AT 1: HLIN 1,37 AT 2: HLIN 1,37 AT 36: HLIN 1,37 AT 37: HLIN 1,37 AT 38
1240 VLIN 1,37 AT 1: VLIN 1,37 AT 2: VLIN 1,37 AT 36: VLIN 1,37 AT 37: COLOR= 15
1250 FOR K = 16 TO 20 STEP 4: HLIN K,K +2 AT K: HLIN K,K +2 AT K +2: PLOT K,K +1: PLOT K +2,K +1: NEXT : PLOT 21,17: PLOT 17,21
1260 FOR K = 1 TO 8: READ I4(K): NEXT K: DATA 0,-1,-1,-1,0,1,1,1: FOR K = 1 TO 8: READ J4(K): NEXT K: DATA 1,1,0,-1,-1,-1,0,1: FOR K = 1 TO 8: READ C$(K): NEXT K: DATA A,B,C,D,E,F,G,H:I = 1
1270 FOR I = 0 TO 9: FOR J = 0 TO 9:A(I,J) = 0: NEXT J: NEXT I:A(4,4) = -1:A(5,5) = -1:A(4,5) = 1:A(5,4) = 1:C1 = 2:H1 = 2:N1 = 4:Z = 0
1280 C = -1:H = 1
1290 REM HUMAN'S CHOICES
1300 HOME : PRINT "DO YOU WANT TO GO FIRST? (Y/N) ";: GET X$: HOME : IF X$ = "Y" THEN 650